g03baf

g03baf © Numerical Algorithms Group, 2002.

Purpose

G03BAF Computes orthogonal rotations for loading matrix, generalized orthomax criterion

Synopsis

[flr,r,iter,ifail] = g03baf(fl<,stand,g,maxit,acc,ifail>)

Description

 
 Let (Lambda) be the p by k matrix of loadings from a variable-
 directed multivariate method, e.g. canonical variate analysis or 
 factor analysis. This matrix represents the relationship between 
 the original p variables and the k orthogonal linear combinations
 of these variables, the canonical variates or factors. The latter
 are only unique up to a rotation in the k-dimensional space they 
 define. A rotation can then be found that simplifies the 
 structure of the matrix of loadings, and hence the relationship 
 between the original and the derived variables. That is the 
                   *                                  *     
 elements, (lambda)  , of the rotated matrix, (Lambda) , are 
                   ij                                       
 either relatively large or small. The rotations may be found by 
 minimizing the criterion:
 
        k   p                         k  [ p               ]2
        --  --          *  4  (gamma) -- [ --          *  2]
     V= >   >  ((lambda)  ) - ------- >  [ >  ((lambda)  ) ] 
        --  --          ij       p    -- [ --          ij  ]
        j=1 i=1                       j=1[ i=1             ]
 
 where the constant (gamma) gives a family of rotations with 
 (gamma)=1 giving varimax rotations and (gamma)=0 giving quartimax
 rotations.
 
 It is generally advised that factor loadings should be 
 standardised, so that the sum of squared elements for each row is
 one, before computing the rotations.
 
                                               *              

Parameters

g03baf

Required Input Arguments:

fl (:,:)                              real

Optional Input Arguments:                       <Default>

stand (1)                             string   'u'
g                                     real     1
maxit                                 integer  30
acc                                   real     1e-5
ifail                                 integer  -1

Output Arguments:

flr (:,:)                             real
r (:,:)                               real
iter                                  integer
ifail                                 integer